Unless otherwise indicated herein, the approaches described in this section are not prior art to the claims in this application and are not admitted to be prior art by inclusion in this section.
Mobile devices are becoming increasingly powerful and capable of performing day to day tasks. However, the available storage on mobile devices (e.g., smartphones, tablets, etc.) is limited when compared to that on a server (or personal computer). As a result, only a subset of files available on the server can be stored on the mobile device. While the mobile device may have access to all the files on the server when a network connection exists between the mobile device and the server, the mobile device is limited to the files stored locally when there is no network connection.
Since the files on the server can change over time, it is necessary to periodically synchronize the global database stored on the server and the local database stored on the mobile device. For a given folder, the mobile device can selectively delete files that are no longer in the corresponding folder on the global database and download new files or updated files that belong to the corresponding folder on the global database. This deletion and download process can be time consuming and bandwidth intensive. Given the limited network bandwidth and high latency, there is a need for improved techniques for selectively synchronizing data.